RichEdit a spatny font(samovolne prepnuti do jineho) - doplneni

Otázka od: Pavel Malinsky

1. 4. 2004 21:52

 Ahoj,
 
 mam jednoduchy editor udelany z TRichEdit nastavim mu font
 treba Times New Roman. Zkopiruju si treba v notepadu text "aaaeeeaaa"
 (ecka jsou s hackem) a vlozim do toho meho RichEditu. Problem je ten,
 ze prvni tri acka jsou spravne Timesem, ale ecka s hackem a nasledujici
 acka jsou fontem SimSum (u kolegy fontem @Arial Unicode MS).
 
 Jak donutit RichEdit, aby dodrzel pro text navoleny font a ne ze se sam
 proste po ecku s hackem prepne na jiny font???

Jinak sem zkousel i RxRichEdit, ale je to totez   .

ZAPOMEL SEM: WinXP SP1, D4 a D5

 
           S pozdravem a dikem
 =====================================
> Pavel Malinsky; malinsky@pmcom.cz <
 =====================================
> GSM: 602 652 203 | ICQ: 322015967 <
 =====================================


Odpovedá: js-delphi@quick.cz

2. 4. 2004 9:04

Odesilatel: Pavel Malinsky <malinsky@pmcom.cz>
> mam jednoduchy editor udelany z TRichEdit nastavim mu font
> treba Times New Roman. Zkopiruju si treba v notepadu text
> "aaaeeeaaa"
> (ecka jsou s hackem) a vlozim do toho meho RichEditu. Problem je ten,
> ze prvni tri acka jsou spravne Timesem, ale ecka s hackem a
> nasledujici acka jsou fontem SimSum (u kolegy fontem @Arial
> Unicode MS).

Ahoj!
Co se mrknout do historie konference, tam uz jsem tenhle problem popisoval
nejme 3 za tento rok..  
Zrejme se jedna o chybu primo v objektu RichEditu a jeho pouziti na oper sys
W2k a WXP. Po znacich jako je "e s hackem" se samovolne zmeni font. Kdyz prijde
dalsi "e s hackem" font se da zase do poradku.
Reseni - pouze zaplata. Odchytit udalost OnChange na tom RichEditu a v teto
udalosti provest neco jako (predpokladam, ze mas vybran CharSet=East_European)
procedure TForm1.OnChange (Sender: TObject);
begin
  with (Sender as TRichEdit) do
  begin
    Font.Charset:=Default_charset;
    Font.Charset:=East_European;
  end;
end;
Tot vsjo. Pak byl problem s vkladanym textem, ktery mel byt nejak upravovan,
ale to nejak nevedlo k cili. Tusim, ze posledni reseni bylo generovat soubor
"rtf", ten nacist a pak provest tu zmenu s tim charsetem.
Jirka
--------------------------------------------------
Ing. Jiri Sokol; jiri.sokol@seznam.cz; 972 231 187
D6Prof+SP3; WinXPProf+SP1; FB 1.0.3
programator amater


Odpovedá: Pavel Malinsky

2. 4. 2004 9:01

> -----Original Message-----
> From: delphi-l-owner@clexpert.cz
> [mailto:delphi-l-owner@clexpert.cz] On Behalf Of js-delphi@quick.cz
>
> Odesilatel: Pavel Malinsky <malinsky@pmcom.cz>
> > mam jednoduchy editor udelany z TRichEdit nastavim mu font
> > treba Times New Roman. Zkopiruju si treba v notepadu text
> > "aaaeeeaaa"
> > (ecka jsou s hackem) a vlozim do toho meho RichEditu.
> Problem je ten,
> > ze prvni tri acka jsou spravne Timesem, ale ecka s hackem a
> > nasledujici acka jsou fontem SimSum (u kolegy fontem @Arial
> > Unicode MS).
>
> Ahoj!
> Co se mrknout do historie konference, tam uz jsem tenhle
> problem popisoval nejme 3 za tento rok..  

Ahoj,

 , samozrejme sem archiv prosel a aplikoval opravu pomoci
OnChange, jenom by se mi vice libilo kdyby nahodou tuto
chybu nekdo objevil primo u zdroje a vedel co s tim  .

> procedure TForm1.OnChange (Sender: TObject);
> begin
> with (Sender as TRichEdit) do
> begin
> Font.Charset:=Default_charset;
> Font.Charset:=East_European;
> end;
> end;

          S pozdravem a dikem
=====================================
> Pavel Malinsky; malinsky@pmcom.cz <
=====================================
> GSM: 602 652 203 | ICQ: 322015967 <
=====================================